﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Sinacor.OMM.Configuration.Router
{
    /// <summary>
    /// Router configuration
    /// </summary>
    public class RouterConfiguration
    {

        private Repository.RepositoryConfiguration _messageMainRepository = new Repository.RepositoryConfiguration();
        private Repository.RepositoryConfiguration _systemMessageRepository = new Repository.RepositoryConfiguration();
        private List<DistributionRule> _distributionRules = new List<DistributionRule>();
        private string _macAddress;
        private int? _retransmissionTimeout;        

        /// <summary>
        /// Message Main Repository
        /// </summary>
        public Repository.RepositoryConfiguration MessageMainRepository
        {
            get { return _messageMainRepository; }
            set { _messageMainRepository = value; }
        }

        /// <summary>
        /// System Message Repository
        /// </summary>
        public Repository.RepositoryConfiguration SystemMessageRepository
        {
            get { return _systemMessageRepository; }
            set { _systemMessageRepository = value; }
        }
        
        /// <summary>
        /// Distribution rules
        /// </summary>
        public List<DistributionRule> DistributionRules
        {
            get { return _distributionRules; }
            set { _distributionRules = value; }
        }

        public string MacAddress
        {
            get { return _macAddress; }
            set { _macAddress = value; }
        }

        public int? RetransmissionTimeout
        {
            get { return _retransmissionTimeout; }
            set { _retransmissionTimeout = value; }
        }
    }
}
